package com.hx.zhg.util;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;

import java.util.List;
import java.util.Map;

/**
 * Json 工具类
 */
public class JsonUtils {

	/**
	 * 对象转成json字符串
	 * @param obj    参数
	 * @return json string
	 */
	public static String objToJson(Object obj){
		return JSON.toJSONString(obj, SerializerFeature.WriteNonStringKeyAsString);
	}

	/**
	 * json字符串转成对象
	 * @param json    json串
	 * @param cls      真实类
	 * @return object
	 */
	public static <T> T jsonToObj(String json,Class<T> cls){
		return JSON.parseObject(json, cls);
	}

	/**
	 * 将Json串转换为Map<String,Obbject>
	 * @param json json串
	 * @return Map<String,Object>
	 */
	public static  Map<String,Object> jsonToMap(String json ){
		return JSON.parseObject(json,Map.class);
	}

	/**
	 * json to list
	 * @param jsonData
	 * @param clazz
	 * @param <T>
	 * @return
	 * @throws Exception
	 */
	public static <T> List<T> jsonToList(String jsonData, Class<T> clazz)
			throws Exception {
		return JSON.parseArray(jsonData, clazz);
	}



}
